#pragma once

#include "Scope.h"

//Scubserver = Scuba Observer ;-)
//Pure interface
struct Scubserver
{
	virtual void setScope(Scope& inScope)=0;
    virtual void onNewToken(Scope& inScope, Token& inToken) = 0;
	//Called before ScopeEntry or ScopeExit
    virtual void onScopeEntry(Scope& inNewScope, Scope& inOldScope) = 0;
	//Called *after* new scope entered
    virtual void onScopeExit(Scope& inNewScope, Scope& inOldScope) = 0;
	//Called *after* old scope exited

};
